#if !defined(AFX_CHARTOBJECTSVIEW_H__C67EE9B0_EC88_45A3_962E_3CE7FD3DE765__INCLUDED_)
#define AFX_CHARTOBJECTSVIEW_H__C67EE9B0_EC88_45A3_962E_3CE7FD3DE765__INCLUDED_

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000

//*******************************************************************************
// COPYRIGHT NOTES
// ---------------
// This is a sample for BCGControlBar Library Professional Edition
// Copyright (C) 1998-2016 BCGSoft Ltd.
// All rights reserved.
//
// This source code can be used, distributed or modified
// only under terms and conditions 
// of the accompanying license agreement.
//*******************************************************************************
//
// ChartObjectsView.h : header file
//

/////////////////////////////////////////////////////////////////////////////
// CChartObjectsView form view

#ifndef __AFXEXT_H__
#include <afxext.h>
#endif

#include "BCGPChartExampleDoc.h"
#include "BCGPChartExampleView.h"

class CChartImageObject;

class CChartObjectsView : public CBCGPChartExampleView
{
protected:
	CChartObjectsView();           // protected constructor used by dynamic creation
	DECLARE_DYNCREATE(CChartObjectsView)

// Form Data
public:
	//{{AFX_DATA(CChartObjectsView)
	enum { IDD = IDD_CHART_OBJECTS };
	CBCGPChartCtrl	m_wndChart;
	BOOL	m_bColoredZones;
	BOOL	m_bCustomLines;
	BOOL	m_bInterlineColorZones;
	BOOL	m_bTextObjects;
	BOOL	m_bCustomImage;
	//}}AFX_DATA

// Attributes
public:

// Operations
public:

	virtual CBCGPChartVisualObject* GetChart()
	{
		return m_wndChart.GetChart();
	}

	virtual CBCGPBaseVisualCtrl* GetCtrl()
	{
		return &m_wndChart;
	}

// Overrides
	// ClassWizard generated virtual function overrides
	//{{AFX_VIRTUAL(CChartObjectsView)
	public:
	virtual void OnInitialUpdate();
	protected:
	virtual void DoDataExchange(CDataExchange* pDX);    // DDX/DDV support
	//}}AFX_VIRTUAL

	virtual void OnChangeBackgroundDarkness()
	{
		SetObjectColors();
	}

	void SetObjectColors();

// Implementation
protected:
	virtual ~CChartObjectsView();
#ifdef _DEBUG
	virtual void AssertValid() const;
	virtual void Dump(CDumpContext& dc) const;
#endif

	// Generated message map functions
	//{{AFX_MSG(CChartObjectsView)
	afx_msg void OnUpdateChart();
	//}}AFX_MSG
	DECLARE_MESSAGE_MAP()

	CBCGPBrush			m_brLine1;
	CBCGPBrush			m_brLine2;
	CBCGPBrush			m_brLine3;
	CBCGPStrokeStyle	m_strokeStyle;

	CBCGPBrush			m_brFill1;
	CBCGPBrush			m_brFill2;

	CBCGPBrush			m_brAxisMarkFill;

	CBCGPBrush			m_brText1;
	CBCGPBrush			m_brText2;
	CBCGPBrush			m_brText3;

	CBCGPBrush			m_brFillText1;
	CBCGPBrush			m_brFillText2;
	CBCGPBrush			m_brFillText3;

	// Chart Objects and Effects
	CBCGPChartRangeObject*	m_pRangeHorz;
	CBCGPChartRangeObject*	m_pRangeVert;
	CBCGPChartSeries*		m_pDummyGreenSeries;
	CBCGPChartSeries*		m_pDummyRedSeries;

	CBCGPChartInterLineColoringEffect* m_pEffect_0_1; // effect between series 0 - 1 
	CBCGPChartInterLineColoringEffect* m_pEffect_2_0; // effect between series 2 - 0

	CBCGPChartLineObject*	m_pLine1;
	CBCGPChartLineObject*	m_pLine2;
	CBCGPChartLineObject*	m_pLine3;

	CBCGPChartAxisMarkObject* m_pMarkLine1;

	CBCGPChartTextObject*	m_pTextObjectGreen;
	CBCGPChartTextObject*	m_pTextObjectRed;
	CBCGPChartTextObject*	m_pTextObjectCaption;
	
	CChartImageObject*		m_pImageObject;
};

/////////////////////////////////////////////////////////////////////////////

//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.

#endif // !defined(AFX_CHARTOBJECTSVIEW_H__C67EE9B0_EC88_45A3_962E_3CE7FD3DE765__INCLUDED_)
